package com.hopes.bizz.close.visitor.vo;

import com.hopes.bizz.close.common.constant.enums.ParkCloseModDictEnum;
import com.hopes.bizz.close.common.constant.enums.ParkCloseSysDictEnum;
import com.hopes.boss.admin.api.resolver.DictResolver;
import com.hopes.boss.admin.api.resolver.enums.AdminDictEnum;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * @author yumr
 * @ProjectName bizz
 * @Description 普通车辆进出台账 VO
 * @time 2023/10/30 17:29
 */
@Data
public class ClosedGeneralCarRecordVO implements Serializable {

    private static final long serialVersionUID = -2601293056170696006L;

    /**
     * ID
     */
    private Long id;

    /**
     * 到访企业
     */
    private Long orgId;

    /**
     * 备案企业
     */
    private Long companyId;

    /**
     * 车辆ID
     */
    private String carId;

    /**
     * 车牌号
     */
    private String licencePlateNumber;

    /**
     * 车主姓名
     */
    private String carOwnerName;

    /**
     * 车主电话
     */
    private String carOwnerPhone;

    /**
     * 通行方式
     */
    private Integer passType;

    /**
     * 车辆类型
     */
    private Integer carType;

    /**
     * 卡口ID
     */
    private Long gateId;

    /**
     * 车牌图片
     */
    private String platePicUrl;

    /**
     * 车辆图片
     */
    private String vehiclePicUrl;

    /**
     * 进出方式
     */
    private String inOutMethod;

    /**
     * 方向
     */
    private Integer direction;

    /**
     * 进出时间
     */
    private Date inOutTime;


    /**
     * 查询上一次的进出时间
     */
    private Date lastInOutTime;

    public String getOrgIdStr() {
        return DictResolver.getItemLabelByValue(AdminDictEnum.sys_company, this.getOrgId());
    }

    public String getGateIdStr() {
        return DictResolver.getItemLabelByValue(ParkCloseModDictEnum.closed_gate, this.getGateId());
    }

    public String getCarTypeStr() {
        return DictResolver.getItemLabelByValue(ParkCloseSysDictEnum.close_general_car_type, this.getCarType());
    }

    public String getPassTypeStr() {
        return DictResolver.getItemLabelByValue(ParkCloseSysDictEnum.close_general_car_pass_type, this.getPassType());
    }

    public String getDirectionStr() {
        return DictResolver.getItemLabelByValue(ParkCloseSysDictEnum.close_visitor_record_direction_type, this.getDirection());
    }
}
